package com.ktwlsoft.archivemanage.domain.dao.repository.customAnalysis;

import java.util.List;

import com.alibaba.fastjson.JSONObject;
import com.ktwlsoft.archivemanage.payload.customAnalysis.GetDetailsResult;
import org.apache.ibatis.annotations.Mapper;
import com.ktwlsoft.archivemanage.domain.dao.entity.customAnalysis.CustomAnalysis;

/**
 * custom_analysis--自助分析
 *
 * @author zhuhe on 2019-11-27 15:32:01
 * @version 1.0
 */
@Mapper
public interface ICustomAnalysisMapper {
	
	/**
	 * 查询列表 on 2019-11-27 15:32:01
	 * @param customAnalysis customAnalysis
	 * @return List<CustomAnalysis>
	 */
	List<CustomAnalysis> findList(CustomAnalysis customAnalysis);

	/**
	 * 查询列表 on 2019-11-27 15:32:01
	 * @param jsonObject jsonObject
	 * @return List<CustomAnalysis>
	 */
	List<CustomAnalysis> findListJson(JSONObject jsonObject);
	
	/**
	 * 根据id查询信息 on 2019-11-27 15:32:01
	 * @param id id
	 * @return CustomAnalysis
	 */
	CustomAnalysis getById(Long id);

	/**
	 * 自助分析详情 on 2019/12/3 10:19
	 *
	 * @param id id
	 * @return Result<?>
	 */
	GetDetailsResult getDetails(Long id);
	
	/**
	 * 根据id删除信息 on 2019-11-27 15:32:01
	 * @param id id
	 * @return int
	 */
	int deleteById(Long id);
	
	/**
	 * 根据id集合批量删除信息 on 2019-11-27 15:32:01
	 * @param ids ids
	 * @return int
	 */
	int deleteByIds(List<Long> ids);
	


	/**
	 * 插入 on 2019-11-27 15:32:01
	 * @param customAnalysis customAnalysis
	 * @return int
	 */
    int insert(CustomAnalysis customAnalysis);

	/**
	 * 更新 on 2019-11-27 15:32:01
	 * @param customAnalysis customAnalysis
	 * @return int
	 */
    int update(CustomAnalysis customAnalysis);

    /**
      * 获取图表编号 on 2019/11/27 16:51
      *
      * @return CustomAnalysis
      */
    String getChartNum();

	/**
	 * 获取业务检查得分数据 on 2019/11/28 15:21
	 *
	 * @param jsonObject jsonObject
	 * @return List<JSONObject>
	 */
	List<JSONObject> getGuidanceScoreData(JSONObject jsonObject);

	/**
	 * 获取整改后得分数据 on 2019/11/28 15:21
	 *
	 * @param jsonObject jsonObject
	 * @return List<JSONObject>
	 */
	List<JSONObject> getMendMarkData(JSONObject jsonObject);

	/**
	 * 获取业务检查单量数据 on 2019/11/29 9:21
	 *
	 * @param jsonObject jsonObject
	 * @return List<JSONObject>
	 */
	List<JSONObject> getGuidanceSingleNumData(JSONObject jsonObject);

	/**
	 * 获取检查整改单量数据 on 2019/11/29 9:39
	 *
	 * @param jsonObject jsonObject
	 * @return List<JSONObject>
	 */
	List<JSONObject> getMendSingleNumData(JSONObject jsonObject);

	/**
	 * 获取立档单位数量数据 on 2019/11/29 9:55
	 *
	 * @param jsonObject jsonObject
	 * @return List<JSONObject>
	 */
	List<JSONObject> getArchiveUnitNumData(JSONObject jsonObject);

	/**
	 * 获取检查整改次数数据 on 2019/11/29 11:04
	 *
	 * @param jsonObject jsonObject
	 * @return List<JSONObject>
	 */
	List<JSONObject> getMendNumData(JSONObject jsonObject);

	/**
	 * 指标缺陷次数 on 2019/11/29 11:23
	 *
	 * @param jsonObject jsonObject
	 * @return List<JSONObject>
	 */
	List<JSONObject> getIndexDefectNumData(JSONObject jsonObject);
}
